package com.xebest.web.mapper.write;

import com.xebest.web.form.XeVenStoreCheckForm;
import com.xebest.web.model.XeVenStoreCheckEntity;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface XeVenStoreCheckWriteMapper {

    /**
     * 添加盘点单
     *
     * @author 杜春静
     */
    int insertStoreCheck(XeVenStoreCheckEntity record) throws Exception;

    /**
     * 更新盘点单信息
     *
     * @author 杜春静
     */
    int updateStoreCheckByEntity(XeVenStoreCheckEntity record) throws Exception;

    /**
     * 批量更新盘点单
     *
     * @author 杜春静
     */
    int batchUpdateStoreCheck(List<XeVenStoreCheckForm> params) throws Exception;

    /**
     * 批量更新盘点单状态
     *
     * @param checkCodes       盘点单数组集合
     * @param checkStockStatus 盘点单状态
     * @param userCode         商户code
     * @param modifyUser       修改人
     * @author 杜春静
     */
    int batchUpdateCheckStatus(@Param("checkCodes") String[] checkCodes, @Param("checkStockStatus") Integer checkStockStatus, @Param("userCode") String userCode, @Param("modifyUser") String modifyUser) throws Exception;

    /**
     * 根据盘点单主键查询盘点单列表
     *
     * @author 杜春静
     */
    XeVenStoreCheckEntity getStoreCheckById(@Param("checkCode") String checkCode);

}